from os import link
import requests
from bs4 import BeautifulSoup
import datetime
import time

import pymysql

pwd = 'HUZHIg123'

def create():
    db = pymysql.connect(host='localhost',
                     user='root',
                     password=pwd,
                     database='test')
 
    
    # 使用 cursor() 方法创建一个游标对象 cursor
    cursor = db.cursor()

     # 使用 execute() 方法执行 SQL，如果表存在则删除
    cursor.execute("DROP TABLE IF EXISTS songs")
    
    # 使用预处理语句创建表
    sql = """CREATE TABLE songs (
            id int(10) PRIMARY KEY AUTO_INCREMENT,
            link  VARCHAR(2000),
            title VARCHAR(2000)
             )"""

    cursor.execute(sql)                 

    db.close



def CON(value1,value2):
    db = pymysql.connect(host='localhost',
                     user='root',
                     password=pwd,
                     database='test')
    
 
    # 使用 cursor() 方法创建一个游标对象 cursor
    cursor = db.cursor()
    
    sql = f'insert into songs(link,title) values("{value1}","{value2}")'

    print(value1)
    
    try:
         # 执行sql语句
        cursor.execute(sql)
        # 执行sql语句
        db.commit()
        print('插入数据成功')
    except:
        # 发生错误时回滚
        db.rollback()
        print('插入数据失败')
    # 关闭数据库连接
    db.close()
    

url = 'https://y.qq.com/n/ryqq/toplist/4'
resp = requests.get(url)

resp.encoding = 'gbk2312'
soup = BeautifulSoup(resp.text,'html.parser')

#数据整理
list1=[]#第一次扒下来的数据整理的大列表（不用管）

for k in soup.select('div[class ="songlist__item songlist__item--even"]'):
    for j in k.select('div[class ="songlist__songname"]'): 
        list1.append(str(j.select('a[class="songlist__cover"]')))


url0 = "https://y.qq.com" + list1[0].split('<a class="songlist__cover" href="')[-1].split('"')[0]
title = list1[0].split('title="')[-1].split('">')[0]
create()
CON(url0,title)